<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>xilpdi: xilpdi.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">xilpdi
   </div>
   <div id="projectbrief">Vitis Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Overview</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="globals.html"><span>APIs</span></a></li>
      <li><a href="files.html"><span>File&#160;List</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;"
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('xilpdi_8h.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a>  </div>
  <div class="headertitle">
<div class="title">xilpdi.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Overview</h2>
<div class="textblock"><p>This is the header file which contains definitions for the PDI. </p>
<pre>
MODIFICATION HISTORY:</pre><pre>Ver   Who  Date        Changes
----- ---- -------- -------------------------------------------------------
1.00  kc   12/21/2017 Initial release
1.01  bsv  04/08/2019 Added support for secondary boot device parameters
      bsv  07/30/2019 Renamed XilPdi_ReadAndValidateImgHdrTbl to
                                                XilPdi_ReadImgHdrTbl
      rm   08/28/2019 Added APIs for retrieving delay load and delay handoff
                                        params
1.02  bsv  11/29/2019 Added support for smap bus width word in partial pdis
      vnsl 02/26/2020 Added support to read DPA CM Enable field in meta headers
      vnsl 03/01/2020 Added support to read PufHeader from Meta Headers and
                                        partition headers
      vnsl 04/12/2020 Added support to read BootHdr Auth Enable field in
                                        boot header
1.03  skd  07/14/2020 Function pointer DeviceCopy prototype changed
1.04  bsv  07/29/2020 Added UID, parent ID, function ID and copy to memory
                      address
      kpt  07/30/2020 Added maximum limit for number of images
      td   08/19/2020 Fixed MISRA C violations Rule 10.3
      bsv  10/13/2020 Code clean up
      kpt  10/19/2020 Added support to validate checksum of image headers and
                      partition headers
1.05  td   11/23/2020 Coverity Warning Fixes
      ma   01/08/2021 Changed maximum number of entries possible for ATF
      har  02/01/2021 Added API to get PLM encryption key source
      bm   02/12/2021 Updated logic to use BootHdr directly from PMC RAM
      har  03/17/2021 Removed XilPdi_IsBhdrAuthEnable
      ma   03/24/2021 Redirect XilPdi prints to XilLoader
      ma   03/24/2021 Change ImgName to u8 to print max characters of
                      PDI image names
      har  03/31/2021 Added PdiId in <a class="el" href="struct_xil_pdi___img_hdr_tbl.html" title="Structure to store the image header table details. ">XilPdi_ImgHdrTbl</a> structure
1.06  td   07/08/2021 Fix doxygen warnings
      bsv  08/16/2021 Code clean up
      bm   08/24/2021 Added Extract Metaheader support
      kpt  09/18/2021 Fixed SW-BP-REDUNDANCY in
                      XilPdi_IsDpaCmEnable
1.07  kpt  02/01/2022 Updated XilPdi_ReadBootHdr prototype
1.08  bsv  07/06/2022 Added API to read OptionaData from Metaheader
      bm   07/06/2022 Refactor versal and versal_net code
      bsv  07/08/2022 Code changes related to Optional data in IHT
      bm   07/13/2022 Added compatibility check for In-Place PLM Update
      bm   09/13/2022 Reduce maximum number of partitions and images
1.09  har  11/17/2022 Removed macros for bh_auth attribute in Bootheader
      ng   11/23/2022 Added macros to replace magic numbers in
                      XilPdi_ValidateChecksum
      kal  01/05/2023 Added PcrInfo attribute in <a class="el" href="struct_xil_pdi___img_hdr.html" title="Maximum size of IHT Optional data is 15,872B(16KB-128Word) ">XilPdi_ImgHdr</a>
      sk   02/22/2023 Added Bit MASK for EoPDI SYNC logic
      dd   03/16/2023 Misra-C violation Rule 17.8 fixed
      sk   05/18/2023 Deprecate copy to memory feature
      am   07/03/2023 Added macros related to IHT OP data
      dd   08/11/2023 Updated doxygen comments
      kpt  12/04/2023 Move <a class="el" href="struct_xil_pdi___boot_hdr.html" title="Structure to store the boot header table details. ">XilPdi_BootHdr</a> to platform specific files
      am   03/02/2024 Added IsAuthOptimized variable in <a class="el" href="struct_xil_pdi___meta_hdr.html" title="Structure of the image header which contains information of image header table and partition headers...">XilPdi_MetaHdr</a> structure
1.11  kpt  11/05/2024 Add XilPdi_ReadOptionalData to read optional data
      pre  12/09/2024 use PMC RAM for Metaheader instead of PPU1 RAM</pre><pre></pre><dl class="section note"><dt>Note</dt><dd></dd></dl>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_xil_pdi___img_hdr.html">XilPdi_ImgHdr</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum size of IHT Optional data is 15,872B(16KB-128Word)  <a href="struct_xil_pdi___img_hdr.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_xil_pdi___prtn_hash_info.html">XilPdi_PrtnHashInfo</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Partition hash entry information.  <a href="struct_xil_pdi___prtn_hash_info.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_xil_pdi___meta_hdr.html">XilPdi_MetaHdr</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure of the image header which contains information of image header table and partition headers.  <a href="struct_xil_pdi___meta_hdr.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_xil_pdi___prtn_entry.html">XilPdi_PrtnEntry</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure corresponding to each partition entry.  <a href="struct_xil_pdi___prtn_entry.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_xil_pdi___a_t_f_handoff_params.html">XilPdi_ATFHandoffParams</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure for handoff parameters to ARM Trusted Firmware (ATF)  <a href="struct_xil_pdi___a_t_f_handoff_params.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
XilPdi Definitions</h2></td></tr>
<tr class="memitem:a67d688ddfd241fd48763f00cee376575"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67d688ddfd241fd48763f00cee376575"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_MIN_PRTNS</b>&#160;&#160;&#160;(1U)</td></tr>
<tr class="separator:a67d688ddfd241fd48763f00cee376575"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acabf1525a711a096aedcad66f01914ce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acabf1525a711a096aedcad66f01914ce"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_MIN_IMGS</b>&#160;&#160;&#160;(1U)</td></tr>
<tr class="separator:acabf1525a711a096aedcad66f01914ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a420edc38dfce64b93bacd57d2b74ef51"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#a420edc38dfce64b93bacd57d2b74ef51">XIH_BH_IMAGE_IDENT</a>&#160;&#160;&#160;(0x584C4E58U)</td></tr>
<tr class="memdesc:a420edc38dfce64b93bacd57d2b74ef51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Boot header identification string.  <a href="#a420edc38dfce64b93bacd57d2b74ef51">More...</a><br/></td></tr>
<tr class="separator:a420edc38dfce64b93bacd57d2b74ef51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9028981547dcc8b47e486b6fab438333"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9028981547dcc8b47e486b6fab438333"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_BH_IMAGE_IDENT_OFFSET</b>&#160;&#160;&#160;(0x14U)</td></tr>
<tr class="separator:a9028981547dcc8b47e486b6fab438333"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad227efc9f4dc41b638044314bab01e3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#aad227efc9f4dc41b638044314bab01e3">XIH_BH_AES_KEYSRC_OFFSET</a>&#160;&#160;&#160;(0x08U)</td></tr>
<tr class="memdesc:aad227efc9f4dc41b638044314bab01e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Boot header Key source field.  <a href="#aad227efc9f4dc41b638044314bab01e3">More...</a><br/></td></tr>
<tr class="separator:aad227efc9f4dc41b638044314bab01e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71c52f4d03b2c900ecfb3a111afe0935"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a71c52f4d03b2c900ecfb3a111afe0935"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_BH_IMG_ATTRB_OFFSET</b>&#160;&#160;&#160;(0x24U)</td></tr>
<tr class="separator:a71c52f4d03b2c900ecfb3a111afe0935"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a107d5dada2af10ad48a8c87f60da4fdb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#a107d5dada2af10ad48a8c87f60da4fdb">SMAP_BUS_WIDTH_LENGTH</a>&#160;&#160;&#160;(16U)</td></tr>
<tr class="memdesc:a107d5dada2af10ad48a8c87f60da4fdb"><td class="mdescLeft">&#160;</td><td class="mdescRight">SMAP bus width macros.  <a href="#a107d5dada2af10ad48a8c87f60da4fdb">More...</a><br/></td></tr>
<tr class="separator:a107d5dada2af10ad48a8c87f60da4fdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b4b86839721a29435fd625a0bd52c53"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7b4b86839721a29435fd625a0bd52c53"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SMAP_BUS_WIDTH_WORD_LEN</b>&#160;&#160;&#160;(4U)</td></tr>
<tr class="separator:a7b4b86839721a29435fd625a0bd52c53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad363110e1ae46f7aa44913f844b2371c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad363110e1ae46f7aa44913f844b2371c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SMAP_BUS_WIDTH_8_WORD1</b>&#160;&#160;&#160;(0xDD000000U)</td></tr>
<tr class="separator:ad363110e1ae46f7aa44913f844b2371c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7db2bdd3b301812a22ccfed5a7f315d3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7db2bdd3b301812a22ccfed5a7f315d3"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SMAP_BUS_WIDTH_16_WORD1</b>&#160;&#160;&#160;(0x00DD0000U)</td></tr>
<tr class="separator:a7db2bdd3b301812a22ccfed5a7f315d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9747ae2d6e6bfffb7a9ee62e0af9ea68"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9747ae2d6e6bfffb7a9ee62e0af9ea68"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SMAP_BUS_WIDTH_32_WORD1</b>&#160;&#160;&#160;(0x000000DDU)</td></tr>
<tr class="separator:a9747ae2d6e6bfffb7a9ee62e0af9ea68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d569af531389c06604431461dcd6206"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#a1d569af531389c06604431461dcd6206">XIH_IHT_LEN</a>&#160;&#160;&#160;(128U)</td></tr>
<tr class="memdesc:a1d569af531389c06604431461dcd6206"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines for length of the headers.  <a href="#a1d569af531389c06604431461dcd6206">More...</a><br/></td></tr>
<tr class="separator:a1d569af531389c06604431461dcd6206"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42d76994436b24b4620acb1faa31335b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a42d76994436b24b4620acb1faa31335b"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IH_LEN</b>&#160;&#160;&#160;(64U)</td></tr>
<tr class="separator:a42d76994436b24b4620acb1faa31335b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b80e12e25a4763bcb388996365a67ed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b80e12e25a4763bcb388996365a67ed"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_LEN</b>&#160;&#160;&#160;(128U)</td></tr>
<tr class="separator:a2b80e12e25a4763bcb388996365a67ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1fcbf40e9548c434cb79195cd6874ea"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab1fcbf40e9548c434cb79195cd6874ea"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PRTN_WORD_LEN</b>&#160;&#160;&#160;(0x4U)</td></tr>
<tr class="separator:ab1fcbf40e9548c434cb79195cd6874ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22a7b6abd5cf1e23ad024ba8e3449f2b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a22a7b6abd5cf1e23ad024ba8e3449f2b"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PRTN_WORD_LEN_SHIFT</b>&#160;&#160;&#160;(0x2U)</td></tr>
<tr class="separator:a22a7b6abd5cf1e23ad024ba8e3449f2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb831c798fb0df766a8b73b05217ae0b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#adb831c798fb0df766a8b73b05217ae0b">XIH_IHT_ATTR_PUFHD_MASK</a>&#160;&#160;&#160;(0xC000U)</td></tr>
<tr class="memdesc:adb831c798fb0df766a8b73b05217ae0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">IHT attributes.  <a href="#adb831c798fb0df766a8b73b05217ae0b">More...</a><br/></td></tr>
<tr class="separator:adb831c798fb0df766a8b73b05217ae0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46b8dc4a9eab5fdb8d3e2e312a5dfbd5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a46b8dc4a9eab5fdb8d3e2e312a5dfbd5"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IHT_ATTR_PUFHD_SHIFT</b>&#160;&#160;&#160;(14U)</td></tr>
<tr class="separator:a46b8dc4a9eab5fdb8d3e2e312a5dfbd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af31f583b9d788fcee4373ea2f62b0254"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af31f583b9d788fcee4373ea2f62b0254"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IHT_ATTR_DPA_CM_MASK</b>&#160;&#160;&#160;(0x3000U)</td></tr>
<tr class="separator:af31f583b9d788fcee4373ea2f62b0254"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a124991415e244556ef010624877955c9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a124991415e244556ef010624877955c9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IHT_ATTR_DPA_CM_SHIFT</b>&#160;&#160;&#160;(12U)</td></tr>
<tr class="separator:a124991415e244556ef010624877955c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad48c128a191cec8b575af9d8a6c82866"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#ad48c128a191cec8b575af9d8a6c82866">XIH_IHT_ATTR_BYPS_MASK</a>&#160;&#160;&#160;(0x1U)</td></tr>
<tr class="memdesc:ad48c128a191cec8b575af9d8a6c82866"><td class="mdescLeft">&#160;</td><td class="mdescRight">IDCODE checks bypass.  <a href="#ad48c128a191cec8b575af9d8a6c82866">More...</a><br/></td></tr>
<tr class="separator:ad48c128a191cec8b575af9d8a6c82866"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7edfdbd4930683773bb90c942607efae"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#a7edfdbd4930683773bb90c942607efae">XIH_IHT_ATTR_BYPS_ID_CODE_MASK</a>&#160;&#160;&#160;(0x30000U)</td></tr>
<tr class="memdesc:a7edfdbd4930683773bb90c942607efae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check [17:16] bits to bypass ID Code.  <a href="#a7edfdbd4930683773bb90c942607efae">More...</a><br/></td></tr>
<tr class="separator:a7edfdbd4930683773bb90c942607efae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6305030a727ca0eba8c49f744a2eb77"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad6305030a727ca0eba8c49f744a2eb77"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IHT_ATTR_EOPDI_SYNC_SHIFT</b>&#160;&#160;&#160;(18U)</td></tr>
<tr class="separator:ad6305030a727ca0eba8c49f744a2eb77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd592f7dbda1070209f0ad3af5f36c79"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd592f7dbda1070209f0ad3af5f36c79"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IHT_ATTR_EOPDI_SYNC_MASK</b>&#160;&#160;&#160;XPLMI_BIT(XIH_IHT_ATTR_EOPDI_SYNC_SHIFT)</td></tr>
<tr class="separator:acd592f7dbda1070209f0ad3af5f36c79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf6c65054e5f9e2ed432f5de72a09ba7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abf6c65054e5f9e2ed432f5de72a09ba7"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IHT_EXT_IDCODE_MASK</b>&#160;&#160;&#160;(0x3FU)</td></tr>
<tr class="separator:abf6c65054e5f9e2ed432f5de72a09ba7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26ab25256037a487875bb38bf0f097ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26ab25256037a487875bb38bf0f097ab"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IHT_VERSION_OFFSET</b>&#160;&#160;&#160;(0x0U)</td></tr>
<tr class="separator:a26ab25256037a487875bb38bf0f097ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac56eed34eba74dd716b9d8658f403fb2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac56eed34eba74dd716b9d8658f403fb2"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IHT_IDENT_STRING_OFFSET</b>&#160;&#160;&#160;(0x28U)</td></tr>
<tr class="separator:ac56eed34eba74dd716b9d8658f403fb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3956b2e6e58302e7d6655bc98bfca1c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af3956b2e6e58302e7d6655bc98bfca1c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IHT_PPDI_IDENT_VAL</b>&#160;&#160;&#160;(0x50504449U)</td></tr>
<tr class="separator:af3956b2e6e58302e7d6655bc98bfca1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56bf04ce0df9032e95998d6b47d884f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56bf04ce0df9032e95998d6b47d884f4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_IHT_FPDI_IDENT_VAL</b>&#160;&#160;&#160;(0x46504449U)</td></tr>
<tr class="separator:a56bf04ce0df9032e95998d6b47d884f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aacdbda81c80448b66e35eb7d7d89315e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#aacdbda81c80448b66e35eb7d7d89315e">XIH_PH_ATTRB_DPA_CM_EN_MASK</a>&#160;&#160;&#160;(0x18000000U)</td></tr>
<tr class="memdesc:aacdbda81c80448b66e35eb7d7d89315e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prtn Attribute fields.  <a href="#aacdbda81c80448b66e35eb7d7d89315e">More...</a><br/></td></tr>
<tr class="separator:aacdbda81c80448b66e35eb7d7d89315e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a1bb89f92151fc461fafe108e667d2f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a1bb89f92151fc461fafe108e667d2f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_DPA_CM_EN_SHIFT</b>&#160;&#160;&#160;(27U)</td></tr>
<tr class="separator:a0a1bb89f92151fc461fafe108e667d2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa19a3d3a174fe67540edf2812441e551"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa19a3d3a174fe67540edf2812441e551"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_PRTN_TYPE_MASK</b>&#160;&#160;&#160;(0x7000000U)</td></tr>
<tr class="separator:aa19a3d3a174fe67540edf2812441e551"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78ec507201e339d924eef822995baae4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78ec507201e339d924eef822995baae4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_PRTN_OWNER_MASK</b>&#160;&#160;&#160;(0x30000U)</td></tr>
<tr class="separator:a78ec507201e339d924eef822995baae4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac052dc1e4767eef2b92bef73b41e8e8d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac052dc1e4767eef2b92bef73b41e8e8d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_PUFHD_MASK</b>&#160;&#160;&#160;(0xC000U)</td></tr>
<tr class="separator:ac052dc1e4767eef2b92bef73b41e8e8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accf204312ea32f88fa8fc11fae5df2ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="accf204312ea32f88fa8fc11fae5df2ef"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_CHECKSUM_MASK</b>&#160;&#160;&#160;(0x3000U)</td></tr>
<tr class="separator:accf204312ea32f88fa8fc11fae5df2ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7fab9d51ba4932538c391fc9855b3d30"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7fab9d51ba4932538c391fc9855b3d30"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_DSTN_CPU_MASK</b>&#160;&#160;&#160;(0x0F00U)</td></tr>
<tr class="separator:a7fab9d51ba4932538c391fc9855b3d30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac576c25283d6cadb94f00e04542c8bb8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac576c25283d6cadb94f00e04542c8bb8"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_TARGET_EL_MASK</b>&#160;&#160;&#160;(0x0006U)</td></tr>
<tr class="separator:ac576c25283d6cadb94f00e04542c8bb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29dcb613dc6b6acab2451ec5f8e45023"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a29dcb613dc6b6acab2451ec5f8e45023"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_TZ_SECURE_MASK</b>&#160;&#160;&#160;(0x0001U)</td></tr>
<tr class="separator:a29dcb613dc6b6acab2451ec5f8e45023"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75da471c5811dd1f1606e3182f34bfb0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a75da471c5811dd1f1606e3182f34bfb0"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_PUFHD_SHIFT</b>&#160;&#160;&#160;(14U)</td></tr>
<tr class="separator:a75da471c5811dd1f1606e3182f34bfb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2b34f8a94535a70a9cf14898261181f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#ad2b34f8a94535a70a9cf14898261181f">XIH_PH_ATTRB_PRTN_TYPE_RSVD</a>&#160;&#160;&#160;(0x0000000U)</td></tr>
<tr class="memdesc:ad2b34f8a94535a70a9cf14898261181f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prtn Attribute Values.  <a href="#ad2b34f8a94535a70a9cf14898261181f">More...</a><br/></td></tr>
<tr class="separator:ad2b34f8a94535a70a9cf14898261181f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af34246e5a3d9d462a83b3677a8defb63"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af34246e5a3d9d462a83b3677a8defb63"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_PRTN_TYPE_ELF</b>&#160;&#160;&#160;(0x1000000U)</td></tr>
<tr class="separator:af34246e5a3d9d462a83b3677a8defb63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4eecaad1480a70584baef454ddba8cf6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4eecaad1480a70584baef454ddba8cf6"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_PRTN_TYPE_CDO</b>&#160;&#160;&#160;(0x2000000U)</td></tr>
<tr class="separator:a4eecaad1480a70584baef454ddba8cf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabacf40da5795b93b64f865838a583a2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aabacf40da5795b93b64f865838a583a2"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_PRTN_TYPE_CFI_GSC_UNMASK</b>&#160;&#160;&#160;(0x7000000U)</td></tr>
<tr class="separator:aabacf40da5795b93b64f865838a583a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32873589c2f891a5ed3a90e6430e0c70"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a32873589c2f891a5ed3a90e6430e0c70"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_PRTN_OWNER_PLM</b>&#160;&#160;&#160;(0x00000U)</td></tr>
<tr class="separator:a32873589c2f891a5ed3a90e6430e0c70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a8867e50938d82f439df9604712b766"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a8867e50938d82f439df9604712b766"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_PH_ATTRB_HASH_SHA3</b>&#160;&#160;&#160;(0x3000U)</td></tr>
<tr class="separator:a0a8867e50938d82f439df9604712b766"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8268a79e6e661975a939aa006c66d933"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#a8268a79e6e661975a939aa006c66d933">XILPDI_MAX_ENTRIES_FOR_ATF</a>&#160;&#160;&#160;(6U)</td></tr>
<tr class="memdesc:a8268a79e6e661975a939aa006c66d933"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of entries possible in ATF: 2 cores * 3 (EL2 non-secure, EL1 secure and EL1 non-secure)  <a href="#a8268a79e6e661975a939aa006c66d933">More...</a><br/></td></tr>
<tr class="separator:a8268a79e6e661975a939aa006c66d933"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7aa874dd9eccde3869f9ca7a99fb96f9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#a7aa874dd9eccde3869f9ca7a99fb96f9">XILPDI_ERR_IHT_CHECKSUM</a>&#160;&#160;&#160;(0x1)</td></tr>
<tr class="memdesc:a7aa874dd9eccde3869f9ca7a99fb96f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Errors during XilPdi processing.  <a href="#a7aa874dd9eccde3869f9ca7a99fb96f9">More...</a><br/></td></tr>
<tr class="separator:a7aa874dd9eccde3869f9ca7a99fb96f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a0a174db0708454f9d2287a62021d02"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2a0a174db0708454f9d2287a62021d02"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_NO_OF_PRTNS</b>&#160;&#160;&#160;(0x2)</td></tr>
<tr class="separator:a2a0a174db0708454f9d2287a62021d02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70585673d4ca7aa9d5b073b5d2bd5ce9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a70585673d4ca7aa9d5b073b5d2bd5ce9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_ZERO_LENGTH</b>&#160;&#160;&#160;(0x4)</td></tr>
<tr class="separator:a70585673d4ca7aa9d5b073b5d2bd5ce9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92789b1333bf52f9418ba09998ac0b64"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a92789b1333bf52f9418ba09998ac0b64"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_TOTAL_LENGTH</b>&#160;&#160;&#160;(0x5)</td></tr>
<tr class="separator:a92789b1333bf52f9418ba09998ac0b64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace607c8b47a03118eae8219707c34be5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace607c8b47a03118eae8219707c34be5"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_PRTN_TYPE</b>&#160;&#160;&#160;(0x6)</td></tr>
<tr class="separator:ace607c8b47a03118eae8219707c34be5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd334250881c64975fbca0c9e1af65b0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd334250881c64975fbca0c9e1af65b0"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_NO_OF_IMGS</b>&#160;&#160;&#160;(0x7)</td></tr>
<tr class="separator:afd334250881c64975fbca0c9e1af65b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1885706027ca5f25657481f9cb82d492"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1885706027ca5f25657481f9cb82d492"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_IH_CHECKSUM</b>&#160;&#160;&#160;(0x40)</td></tr>
<tr class="separator:a1885706027ca5f25657481f9cb82d492"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56b363fb7d1774624a258939865350b0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56b363fb7d1774624a258939865350b0"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_PH_CHECKSUM</b>&#160;&#160;&#160;(0x80)</td></tr>
<tr class="separator:a56b363fb7d1774624a258939865350b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11e0014d294adf83986fc23499c596d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a11e0014d294adf83986fc23499c596d8"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_OPTIONAL_DATA_CHECKSUM_FAILED</b>&#160;&#160;&#160;(0x70)</td></tr>
<tr class="separator:a11e0014d294adf83986fc23499c596d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12760fa5b548b127b1d0f5f6b8a495af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a12760fa5b548b127b1d0f5f6b8a495af"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_NO_VALID_OPTIONAL_DATA</b>&#160;&#160;&#160;(0x71)</td></tr>
<tr class="separator:a12760fa5b548b127b1d0f5f6b8a495af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb9a747c6a0b87adfe19534d805753d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acb9a747c6a0b87adfe19534d805753d4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_INVALID_DIGEST_TABLE_SIZE</b>&#160;&#160;&#160;(0x72)</td></tr>
<tr class="separator:acb9a747c6a0b87adfe19534d805753d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b5f869b997518c3c02b85a56c220d04"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b5f869b997518c3c02b85a56c220d04"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_OVER_FLOW_OPTIONAL_DATA</b>&#160;&#160;&#160;(0x73)</td></tr>
<tr class="separator:a0b5f869b997518c3c02b85a56c220d04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a697610f657bfa532059e0cb1a6daa06a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a697610f657bfa532059e0cb1a6daa06a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_ERR_OVER_FLOW_OPTIONAL_DATA_AT_DATA_ID_3</b>&#160;&#160;&#160;(0x74)</td></tr>
<tr class="separator:a697610f657bfa532059e0cb1a6daa06a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabde544615609770dd29ac288073c12b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#aabde544615609770dd29ac288073c12b">XILPDI_IH_ATTRIB_DELAY_LOAD_SHIFT</a>&#160;&#160;&#160;(0x7U)</td></tr>
<tr class="memdesc:aabde544615609770dd29ac288073c12b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Image Header Attributes.  <a href="#aabde544615609770dd29ac288073c12b">More...</a><br/></td></tr>
<tr class="separator:aabde544615609770dd29ac288073c12b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a397e15f80095be64ea6c3769774bffd7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a397e15f80095be64ea6c3769774bffd7"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_IH_ATTRIB_DELAY_LOAD_MASK</b>&#160;&#160;&#160;(0X00000080U)</td></tr>
<tr class="separator:a397e15f80095be64ea6c3769774bffd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6714924cf17b12d6f6d6f0b6d8cf5f51"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6714924cf17b12d6f6d6f0b6d8cf5f51"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_IH_ATTRIB_DELAY_HANDOFF_SHIFT</b>&#160;&#160;&#160;(0x8U)</td></tr>
<tr class="separator:a6714924cf17b12d6f6d6f0b6d8cf5f51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad69562f0234f5b46c75a0f29f508474"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad69562f0234f5b46c75a0f29f508474"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_IH_ATTRIB_DELAY_HANDOFF_MASK</b>&#160;&#160;&#160;(0X00000100U)</td></tr>
<tr class="separator:aad69562f0234f5b46c75a0f29f508474"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9a51f668fb8ab96ca931810a818d771"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#ac9a51f668fb8ab96ca931810a818d771">XILPDI_IMG_NAME_ARRAY_SIZE</a>&#160;&#160;&#160;(16U)</td></tr>
<tr class="memdesc:ac9a51f668fb8ab96ca931810a818d771"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array size for image name.  <a href="#ac9a51f668fb8ab96ca931810a818d771">More...</a><br/></td></tr>
<tr class="separator:ac9a51f668fb8ab96ca931810a818d771"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2aadc896b8c367654a52c3de7d830e43"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#a2aadc896b8c367654a52c3de7d830e43">XILPDI_CHECKSUM_MIN_BUF_LEN</a>&#160;&#160;&#160;(0X2U)</td></tr>
<tr class="memdesc:a2aadc896b8c367654a52c3de7d830e43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Minimum buffer length for checksum.  <a href="#a2aadc896b8c367654a52c3de7d830e43">More...</a><br/></td></tr>
<tr class="separator:a2aadc896b8c367654a52c3de7d830e43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84ae0b3fa3d2f28040e775618d16ce93"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#a84ae0b3fa3d2f28040e775618d16ce93">XILPDI_INVERT_CHECKSUM</a>&#160;&#160;&#160;(0xFFFFFFFFU)</td></tr>
<tr class="memdesc:a84ae0b3fa3d2f28040e775618d16ce93"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invert checksum.  <a href="#a84ae0b3fa3d2f28040e775618d16ce93">More...</a><br/></td></tr>
<tr class="separator:a84ae0b3fa3d2f28040e775618d16ce93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc7c7bce644442453baceece73a280ee"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#acc7c7bce644442453baceece73a280ee">XILPDI_PARTITION_HASH_DATA_ID</a>&#160;&#160;&#160;(3U)</td></tr>
<tr class="memdesc:acc7c7bce644442453baceece73a280ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Partition hash data Id.  <a href="#acc7c7bce644442453baceece73a280ee">More...</a><br/></td></tr>
<tr class="separator:acc7c7bce644442453baceece73a280ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed1210cba3367f72a3ae1a0a8d34f981"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#aed1210cba3367f72a3ae1a0a8d34f981">XIH_PMC_RAM_IHT_OP_DATA_STORE_ADDR</a>&#160;&#160;&#160;(0xF201D200U)</td></tr>
<tr class="memdesc:aed1210cba3367f72a3ae1a0a8d34f981"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common address of storing partition hashes for both versal and versal_net.  <a href="#aed1210cba3367f72a3ae1a0a8d34f981">More...</a><br/></td></tr>
<tr class="separator:aed1210cba3367f72a3ae1a0a8d34f981"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7dd901f5a4647ca8a8b5540a6dd421c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#ac7dd901f5a4647ca8a8b5540a6dd421c">XILPDI_OPTIONAL_DATA_WORD_LEN</a>&#160;&#160;&#160;(4U)</td></tr>
<tr class="memdesc:ac7dd901f5a4647ca8a8b5540a6dd421c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Optional data attributes.  <a href="#ac7dd901f5a4647ca8a8b5540a6dd421c">More...</a><br/></td></tr>
<tr class="separator:ac7dd901f5a4647ca8a8b5540a6dd421c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51373d3d62f7fa21b2856243b13b82ba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a51373d3d62f7fa21b2856243b13b82ba"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_OPTIONAL_DATA_DOUBLE_WORD_LEN</b>&#160;&#160;&#160;(2U * XILPDI_OPTIONAL_DATA_WORD_LEN)</td></tr>
<tr class="separator:a51373d3d62f7fa21b2856243b13b82ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8bb992d390bbd733a03942ddc8c5846e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8bb992d390bbd733a03942ddc8c5846e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_OPT_DATA_HDR_ID_MASK</b>&#160;&#160;&#160;(0xFFFFU)</td></tr>
<tr class="separator:a8bb992d390bbd733a03942ddc8c5846e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae37402b4315b63479194093c831d9265"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae37402b4315b63479194093c831d9265"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_OPT_DATA_HDR_LEN_MASK</b>&#160;&#160;&#160;(0xFFFF0000U)</td></tr>
<tr class="separator:ae37402b4315b63479194093c831d9265"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ccddc75a581be10973eb8abd62137b4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ccddc75a581be10973eb8abd62137b4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIH_OPT_DATA_LEN_SHIFT</b>&#160;&#160;&#160;(16U)</td></tr>
<tr class="separator:a9ccddc75a581be10973eb8abd62137b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f31bf9dffb12c4976530b30f3d46874"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1f31bf9dffb12c4976530b30f3d46874"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XIPLDI_SHA3_HASH_SIZE_IN_BYTES</b>&#160;&#160;&#160;(48U)</td></tr>
<tr class="separator:a1f31bf9dffb12c4976530b30f3d46874"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8e03f91ece097c214844b0afbff53b0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af8e03f91ece097c214844b0afbff53b0"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_OPTIONAL_DATA_ID_3_MAX_SIZE_2K_BYTES</b>&#160;&#160;&#160;(0x800U)</td></tr>
<tr class="separator:af8e03f91ece097c214844b0afbff53b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a339a46932d4db4aff7ddc1c922b1cf32"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xilpdi_8h.html#a339a46932d4db4aff7ddc1c922b1cf32">XILPDI_OPTIONAL_DATA_MAX_SIZE_16K_BYTES</a>&#160;&#160;&#160;(0x3E00U)</td></tr>
<tr class="memdesc:a339a46932d4db4aff7ddc1c922b1cf32"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum size of IHT Optional data for Data Id 3 is 2KB.  <a href="#a339a46932d4db4aff7ddc1c922b1cf32">More...</a><br/></td></tr>
<tr class="separator:a339a46932d4db4aff7ddc1c922b1cf32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7107b4a4035fc1b5fa80192121edc8c3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7107b4a4035fc1b5fa80192121edc8c3"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XilPdi_Printf</b>(...)</td></tr>
<tr class="separator:a7107b4a4035fc1b5fa80192121edc8c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3568995d82b28309fb57c7707727588"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3568995d82b28309fb57c7707727588"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_PMCRAM_IHT_COPY_ADDR</b>&#160;&#160;&#160;(0xF2004120U) /* IHT Optional data cannot exceed 16 KB */</td></tr>
<tr class="separator:ae3568995d82b28309fb57c7707727588"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad15086849647e91a6ccf45a46eda83b5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad15086849647e91a6ccf45a46eda83b5"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_PMCRAM_IHT_DATA_ADDR</b>&#160;&#160;&#160;(XILPDI_PMCRAM_IHT_COPY_ADDR + <a class="el" href="xilpdi_8h.html#a1d569af531389c06604431461dcd6206">XIH_IHT_LEN</a>)</td></tr>
<tr class="separator:ad15086849647e91a6ccf45a46eda83b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a480dccfe46793fd86a2bd11e63e7d02c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a480dccfe46793fd86a2bd11e63e7d02c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XILPDI_WORD_LEN_SHIFT</b>&#160;&#160;&#160;(2U)</td></tr>
<tr class="separator:a480dccfe46793fd86a2bd11e63e7d02c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga68f9d9d52845d0060f3a12877e54e1cf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#ga68f9d9d52845d0060f3a12877e54e1cf">XilPdi_ValidatePrtnHdr</a> (const <a class="el" href="struct_xil_pdi___prtn_hdr.html">XilPdi_PrtnHdr</a> *PrtnHdr)</td></tr>
<tr class="memdesc:ga68f9d9d52845d0060f3a12877e54e1cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function validates the Partition Header.  <a href="group__xilpdi__apis.html#ga68f9d9d52845d0060f3a12877e54e1cf">More...</a><br/></td></tr>
<tr class="separator:ga68f9d9d52845d0060f3a12877e54e1cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga797b37ca16b6096549489adff97e5dfc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#ga797b37ca16b6096549489adff97e5dfc">XilPdi_ValidateImgHdrTbl</a> (const <a class="el" href="struct_xil_pdi___img_hdr_tbl.html">XilPdi_ImgHdrTbl</a> *ImgHdrTbl)</td></tr>
<tr class="memdesc:ga797b37ca16b6096549489adff97e5dfc"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function checks the fields of the Image Header Table and validates them.  <a href="group__xilpdi__apis.html#ga797b37ca16b6096549489adff97e5dfc">More...</a><br/></td></tr>
<tr class="separator:ga797b37ca16b6096549489adff97e5dfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab95449e9eb9805839f99e2b4aa107313"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#gab95449e9eb9805839f99e2b4aa107313">XilPdi_ReadBootHdr</a> (const <a class="el" href="struct_xil_pdi___boot_hdr.html">XilPdi_BootHdr</a> **BootHdrPtr)</td></tr>
<tr class="memdesc:gab95449e9eb9805839f99e2b4aa107313"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function reads the boot header.  <a href="group__xilpdi__apis.html#gab95449e9eb9805839f99e2b4aa107313">More...</a><br/></td></tr>
<tr class="separator:gab95449e9eb9805839f99e2b4aa107313"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0e8b30c329673e17c9068780d5039b62"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#ga0e8b30c329673e17c9068780d5039b62">XilPdi_ReadImgHdrTbl</a> (<a class="el" href="struct_xil_pdi___meta_hdr.html">XilPdi_MetaHdr</a> *MetaHdrPtr)</td></tr>
<tr class="memdesc:ga0e8b30c329673e17c9068780d5039b62"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function Reads the Image Header Table.  <a href="group__xilpdi__apis.html#ga0e8b30c329673e17c9068780d5039b62">More...</a><br/></td></tr>
<tr class="separator:ga0e8b30c329673e17c9068780d5039b62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3351549fd88876c437726037b8bd5ca3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#ga3351549fd88876c437726037b8bd5ca3">XilPdi_VerifyImgHdrs</a> (const <a class="el" href="struct_xil_pdi___meta_hdr.html">XilPdi_MetaHdr</a> *MetaHdrPtr)</td></tr>
<tr class="memdesc:ga3351549fd88876c437726037b8bd5ca3"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function verifies Image headers.  <a href="group__xilpdi__apis.html#ga3351549fd88876c437726037b8bd5ca3">More...</a><br/></td></tr>
<tr class="separator:ga3351549fd88876c437726037b8bd5ca3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab201600dc6af30b8ca72b6fd0109767c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#gab201600dc6af30b8ca72b6fd0109767c">XilPdi_VerifyPrtnHdrs</a> (const <a class="el" href="struct_xil_pdi___meta_hdr.html">XilPdi_MetaHdr</a> *MetaHdrPtr)</td></tr>
<tr class="memdesc:gab201600dc6af30b8ca72b6fd0109767c"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function verifies Partition Headers.  <a href="group__xilpdi__apis.html#gab201600dc6af30b8ca72b6fd0109767c">More...</a><br/></td></tr>
<tr class="separator:gab201600dc6af30b8ca72b6fd0109767c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaab206394653dbbd10d5fbdbb41832c8e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#gaab206394653dbbd10d5fbdbb41832c8e">XilPdi_ReadImgHdrs</a> (const <a class="el" href="struct_xil_pdi___meta_hdr.html">XilPdi_MetaHdr</a> *MetaHdrPtr)</td></tr>
<tr class="memdesc:gaab206394653dbbd10d5fbdbb41832c8e"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function reads the Image Headers.  <a href="group__xilpdi__apis.html#gaab206394653dbbd10d5fbdbb41832c8e">More...</a><br/></td></tr>
<tr class="separator:gaab206394653dbbd10d5fbdbb41832c8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga34716af70cf4846e312a414d760d9e1b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#ga34716af70cf4846e312a414d760d9e1b">XilPdi_ReadPrtnHdrs</a> (const <a class="el" href="struct_xil_pdi___meta_hdr.html">XilPdi_MetaHdr</a> *MetaHdrPtr)</td></tr>
<tr class="memdesc:ga34716af70cf4846e312a414d760d9e1b"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function reads the Partition Headers.  <a href="group__xilpdi__apis.html#ga34716af70cf4846e312a414d760d9e1b">More...</a><br/></td></tr>
<tr class="separator:ga34716af70cf4846e312a414d760d9e1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga06f73224852f1c65b02cbcfae050385b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#ga06f73224852f1c65b02cbcfae050385b">XilPdi_ReadIhtAndOptionalData</a> (<a class="el" href="struct_xil_pdi___meta_hdr.html">XilPdi_MetaHdr</a> *MetaHdrPtr, u8 PdiType)</td></tr>
<tr class="memdesc:ga06f73224852f1c65b02cbcfae050385b"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function reads IHT and optional data in Image Header Table.  <a href="group__xilpdi__apis.html#ga06f73224852f1c65b02cbcfae050385b">More...</a><br/></td></tr>
<tr class="separator:ga06f73224852f1c65b02cbcfae050385b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacf4b60f3bfd29d0d200e4f218b74dcdf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#gacf4b60f3bfd29d0d200e4f218b74dcdf">XilPdi_ValidateChecksum</a> (const void *Buffer, u32 Length)</td></tr>
<tr class="memdesc:gacf4b60f3bfd29d0d200e4f218b74dcdf"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is used to validate the word checksum for the Image Header table and Partition Headers.  <a href="group__xilpdi__apis.html#gacf4b60f3bfd29d0d200e4f218b74dcdf">More...</a><br/></td></tr>
<tr class="separator:gacf4b60f3bfd29d0d200e4f218b74dcdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab4d2ba6eeeac98dd13665d92c892a5ac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_xil_pdi___prtn_hash_info.html">XilPdi_PrtnHashInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#gab4d2ba6eeeac98dd13665d92c892a5ac">XilPdi_IsPrtnHashPresent</a> (u32 PrtnNum, u32 HashTableSize)</td></tr>
<tr class="memdesc:gab4d2ba6eeeac98dd13665d92c892a5ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function checks if partition hash is present.  <a href="group__xilpdi__apis.html#gab4d2ba6eeeac98dd13665d92c892a5ac">More...</a><br/></td></tr>
<tr class="separator:gab4d2ba6eeeac98dd13665d92c892a5ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3bac0965e4b613497a5126a4e34feae1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#ga3bac0965e4b613497a5126a4e34feae1">XilPdi_StoreDigestTable</a> (<a class="el" href="struct_xil_pdi___meta_hdr.html">XilPdi_MetaHdr</a> *MetaHdrPtr)</td></tr>
<tr class="memdesc:ga3bac0965e4b613497a5126a4e34feae1"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function stores digest table for given data Id.  <a href="group__xilpdi__apis.html#ga3bac0965e4b613497a5126a4e34feae1">More...</a><br/></td></tr>
<tr class="separator:ga3bac0965e4b613497a5126a4e34feae1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga99aeeb01dc13465959103fa29625923a"><td class="memItemLeft" align="right" valign="top">u64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#ga99aeeb01dc13465959103fa29625923a">XilPdi_SearchOptionalData</a> (u64 StartAddress, u64 EndAddress, u32 DataId)</td></tr>
<tr class="memdesc:ga99aeeb01dc13465959103fa29625923a"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function search offset of optional data address.  <a href="group__xilpdi__apis.html#ga99aeeb01dc13465959103fa29625923a">More...</a><br/></td></tr>
<tr class="separator:ga99aeeb01dc13465959103fa29625923a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3d9a4d9527cebbe53947e863c88cab1e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xilpdi__apis.html#ga3d9a4d9527cebbe53947e863c88cab1e">XilPdi_ReadOptionalData</a> (<a class="el" href="struct_xil_pdi___meta_hdr.html">XilPdi_MetaHdr</a> *MetaHdrPtr, u8 PdiType)</td></tr>
<tr class="memdesc:ga3d9a4d9527cebbe53947e863c88cab1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function reads optional data in Image Header Table.  <a href="group__xilpdi__apis.html#ga3d9a4d9527cebbe53947e863c88cab1e">More...</a><br/></td></tr>
<tr class="separator:ga3d9a4d9527cebbe53947e863c88cab1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a107d5dada2af10ad48a8c87f60da4fdb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SMAP_BUS_WIDTH_LENGTH&#160;&#160;&#160;(16U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>SMAP bus width macros. </p>

<p>Referenced by <a class="el" href="group__xilpdi__apis.html#ga0e8b30c329673e17c9068780d5039b62">XilPdi_ReadImgHdrTbl()</a>, and <a class="el" href="group__xilpdi__apis.html#ga3d9a4d9527cebbe53947e863c88cab1e">XilPdi_ReadOptionalData()</a>.</p>

</div>
</div>
<a class="anchor" id="aad227efc9f4dc41b638044314bab01e3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XIH_BH_AES_KEYSRC_OFFSET&#160;&#160;&#160;(0x08U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Boot header Key source field. </p>

</div>
</div>
<a class="anchor" id="a420edc38dfce64b93bacd57d2b74ef51"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XIH_BH_IMAGE_IDENT&#160;&#160;&#160;(0x584C4E58U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Boot header identification string. </p>
<p>XLNX pattern </p>

</div>
</div>
<a class="anchor" id="a7edfdbd4930683773bb90c942607efae"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XIH_IHT_ATTR_BYPS_ID_CODE_MASK&#160;&#160;&#160;(0x30000U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check [17:16] bits to bypass ID Code. </p>

</div>
</div>
<a class="anchor" id="ad48c128a191cec8b575af9d8a6c82866"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XIH_IHT_ATTR_BYPS_MASK&#160;&#160;&#160;(0x1U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>IDCODE checks bypass. </p>

</div>
</div>
<a class="anchor" id="adb831c798fb0df766a8b73b05217ae0b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XIH_IHT_ATTR_PUFHD_MASK&#160;&#160;&#160;(0xC000U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>IHT attributes. </p>

</div>
</div>
<a class="anchor" id="a1d569af531389c06604431461dcd6206"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XIH_IHT_LEN&#160;&#160;&#160;(128U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Defines for length of the headers. </p>

<p>Referenced by <a class="el" href="group__xilpdi__apis.html#ga06f73224852f1c65b02cbcfae050385b">XilPdi_ReadIhtAndOptionalData()</a>, <a class="el" href="group__xilpdi__apis.html#ga0e8b30c329673e17c9068780d5039b62">XilPdi_ReadImgHdrTbl()</a>, <a class="el" href="group__xilpdi__apis.html#ga3d9a4d9527cebbe53947e863c88cab1e">XilPdi_ReadOptionalData()</a>, and <a class="el" href="group__xilpdi__apis.html#ga797b37ca16b6096549489adff97e5dfc">XilPdi_ValidateImgHdrTbl()</a>.</p>

</div>
</div>
<a class="anchor" id="aacdbda81c80448b66e35eb7d7d89315e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XIH_PH_ATTRB_DPA_CM_EN_MASK&#160;&#160;&#160;(0x18000000U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Prtn Attribute fields. </p>

</div>
</div>
<a class="anchor" id="ad2b34f8a94535a70a9cf14898261181f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XIH_PH_ATTRB_PRTN_TYPE_RSVD&#160;&#160;&#160;(0x0000000U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Prtn Attribute Values. </p>

<p>Referenced by <a class="el" href="group__xilpdi__apis.html#ga68f9d9d52845d0060f3a12877e54e1cf">XilPdi_ValidatePrtnHdr()</a>.</p>

</div>
</div>
<a class="anchor" id="aed1210cba3367f72a3ae1a0a8d34f981"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XIH_PMC_RAM_IHT_OP_DATA_STORE_ADDR&#160;&#160;&#160;(0xF201D200U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Common address of storing partition hashes for both versal and versal_net. </p>

<p>Referenced by <a class="el" href="group__xilpdi__apis.html#gab4d2ba6eeeac98dd13665d92c892a5ac">XilPdi_IsPrtnHashPresent()</a>, <a class="el" href="group__xilpdi__apis.html#ga06f73224852f1c65b02cbcfae050385b">XilPdi_ReadIhtAndOptionalData()</a>, and <a class="el" href="group__xilpdi__apis.html#ga3bac0965e4b613497a5126a4e34feae1">XilPdi_StoreDigestTable()</a>.</p>

</div>
</div>
<a class="anchor" id="a2aadc896b8c367654a52c3de7d830e43"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XILPDI_CHECKSUM_MIN_BUF_LEN&#160;&#160;&#160;(0X2U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Minimum buffer length for checksum. </p>

<p>Referenced by <a class="el" href="group__xilpdi__apis.html#gacf4b60f3bfd29d0d200e4f218b74dcdf">XilPdi_ValidateChecksum()</a>.</p>

</div>
</div>
<a class="anchor" id="a7aa874dd9eccde3869f9ca7a99fb96f9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XILPDI_ERR_IHT_CHECKSUM&#160;&#160;&#160;(0x1)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Errors during XilPdi processing. </p>

<p>Referenced by <a class="el" href="group__xilpdi__apis.html#ga797b37ca16b6096549489adff97e5dfc">XilPdi_ValidateImgHdrTbl()</a>.</p>

</div>
</div>
<a class="anchor" id="aabde544615609770dd29ac288073c12b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XILPDI_IH_ATTRIB_DELAY_LOAD_SHIFT&#160;&#160;&#160;(0x7U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Image Header Attributes. </p>

</div>
</div>
<a class="anchor" id="ac9a51f668fb8ab96ca931810a818d771"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XILPDI_IMG_NAME_ARRAY_SIZE&#160;&#160;&#160;(16U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array size for image name. </p>

</div>
</div>
<a class="anchor" id="a84ae0b3fa3d2f28040e775618d16ce93"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XILPDI_INVERT_CHECKSUM&#160;&#160;&#160;(0xFFFFFFFFU)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Invert checksum. </p>

<p>Referenced by <a class="el" href="group__xilpdi__apis.html#gacf4b60f3bfd29d0d200e4f218b74dcdf">XilPdi_ValidateChecksum()</a>.</p>

</div>
</div>
<a class="anchor" id="a8268a79e6e661975a939aa006c66d933"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XILPDI_MAX_ENTRIES_FOR_ATF&#160;&#160;&#160;(6U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Number of entries possible in ATF: 2 cores * 3 (EL2 non-secure, EL1 secure and EL1 non-secure) </p>

</div>
</div>
<a class="anchor" id="a339a46932d4db4aff7ddc1c922b1cf32"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XILPDI_OPTIONAL_DATA_MAX_SIZE_16K_BYTES&#160;&#160;&#160;(0x3E00U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Maximum size of IHT Optional data for Data Id 3 is 2KB. </p>

<p>Referenced by <a class="el" href="group__xilpdi__apis.html#ga3d9a4d9527cebbe53947e863c88cab1e">XilPdi_ReadOptionalData()</a>.</p>

</div>
</div>
<a class="anchor" id="ac7dd901f5a4647ca8a8b5540a6dd421c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XILPDI_OPTIONAL_DATA_WORD_LEN&#160;&#160;&#160;(4U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Optional data attributes. </p>

<p>Referenced by <a class="el" href="group__xilpdi__apis.html#ga3bac0965e4b613497a5126a4e34feae1">XilPdi_StoreDigestTable()</a>.</p>

</div>
</div>
<a class="anchor" id="acc7c7bce644442453baceece73a280ee"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XILPDI_PARTITION_HASH_DATA_ID&#160;&#160;&#160;(3U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Partition hash data Id. </p>

<p>Referenced by <a class="el" href="group__xilpdi__apis.html#ga3bac0965e4b613497a5126a4e34feae1">XilPdi_StoreDigestTable()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
	<p class="footer">&copy; Copyright 2015-2022 Xilinx, Inc. All Rights Reserved.</p>
	<p class="footer">&copy; Copyright 2022-2023 Advanced Micro Devices, Inc. All Rights Reserved.</p>
</div>
</body>
</html>
